package cn.edu.sjtu.se.dslab.service;

import java.util.List;

import cn.edu.sjtu.se.dslab.action.bean.PageBean;
import cn.edu.sjtu.se.dslab.component.data.AvionicsEquipment;
import cn.edu.sjtu.se.dslab.component.data.EquipmentCategory;
import cn.edu.sjtu.se.dslab.exception.DBException;

public interface IAvionicsEquipmentService {
	public boolean addAvionicsEquipment(AvionicsEquipment equipment);

	public boolean updateAvionicsEquipment(AvionicsEquipment equipment);

	public AvionicsEquipment getAvionicsEquipmentById(long id);
	
	public AvionicsEquipment getAvionicsEquipmentByUri(String uri);
	
	public AvionicsEquipment getAvionicsEquipmentByName(String name);
	
	public List<AvionicsEquipment> getAvionicsEquipmentByType(String type);
	
	public List<AvionicsEquipment> getAvionicsEquipmentByText(String text);
	
	public List<AvionicsEquipment> getAllAvionicsEquipmentList();
	/**
	 * 通过category获取该category下的所有设备
	 * @param category
	 * @return
	 */
	public List<AvionicsEquipment> getAvionicsEquipmentByEquipmentCategory(EquipmentCategory category);
	
	public PageBean<AvionicsEquipment> getAvionicsEquipmentByPageNum(int pageNo)
			throws DBException;
}
